package generalpattern.diagram.part;

import generalpattern.diagram.edit.parts.Component2EditPart;
import generalpattern.diagram.edit.parts.Component3EditPart;
import generalpattern.diagram.edit.parts.ComponentComponentCompartment2EditPart;
import generalpattern.diagram.edit.parts.ComponentComponentCompartment3EditPart;
import generalpattern.diagram.edit.parts.ComponentComponentCompartmentEditPart;
import generalpattern.diagram.edit.parts.ComponentEditPart;
import generalpattern.diagram.edit.parts.ComponentPortAttachedRoleEditPart;
import generalpattern.diagram.edit.parts.ComponentPortDelegatedPortsEditPart;
import generalpattern.diagram.edit.parts.ComponentPortEditPart;
import generalpattern.diagram.edit.parts.Connector2EditPart;
import generalpattern.diagram.edit.parts.Connector3EditPart;
import generalpattern.diagram.edit.parts.ConnectorConnectorCompartment2EditPart;
import generalpattern.diagram.edit.parts.ConnectorConnectorCompartment3EditPart;
import generalpattern.diagram.edit.parts.ConnectorConnectorCompartmentEditPart;
import generalpattern.diagram.edit.parts.ConnectorEditPart;
import generalpattern.diagram.edit.parts.ConnectorRoleDelegatedRolesEditPart;
import generalpattern.diagram.edit.parts.ConnectorRoleEditPart;
import generalpattern.diagram.edit.parts.ConstraintEditPart;
import generalpattern.diagram.edit.parts.ElementMultiplicityEditPart;
import generalpattern.diagram.edit.parts.ElementRolesEditPart;
import generalpattern.diagram.edit.parts.MergingOperatorSourceEditPart;
import generalpattern.diagram.edit.parts.MergingOperatorTargetEditPart;
import generalpattern.diagram.edit.parts.Multiplicity2EditPart;
import generalpattern.diagram.edit.parts.MultiplicityEditPart;
import generalpattern.diagram.edit.parts.Overlapping2EditPart;
import generalpattern.diagram.edit.parts.OverlappingEditPart;
import generalpattern.diagram.edit.parts.Pattern2EditPart;
import generalpattern.diagram.edit.parts.Pattern3EditPart;
import generalpattern.diagram.edit.parts.Pattern4EditPart;
import generalpattern.diagram.edit.parts.PatternEditPart;
import generalpattern.diagram.edit.parts.PatternPatternCompartment2EditPart;
import generalpattern.diagram.edit.parts.PatternPatternCompartment3EditPart;
import generalpattern.diagram.edit.parts.PatternPatternCompartmentEditPart;
import generalpattern.diagram.edit.parts.Role2EditPart;
import generalpattern.diagram.edit.parts.RoleEditPart;
import generalpattern.diagram.edit.parts.RoleRoleCompartment2EditPart;
import generalpattern.diagram.edit.parts.RoleRoleCompartmentEditPart;
import generalpattern.diagram.edit.parts.Stringing2EditPart;
import generalpattern.diagram.edit.parts.StringingEditPart;
import generalpattern.diagram.providers.GeneralPatternMetamodelElementTypes;

import java.util.Collection;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;

import org.admanager.generalpattern.plugin.generalpattern.Component;
import org.admanager.generalpattern.plugin.generalpattern.ComponentPort;
import org.admanager.generalpattern.plugin.generalpattern.Connector;
import org.admanager.generalpattern.plugin.generalpattern.ConnectorRole;
import org.admanager.generalpattern.plugin.generalpattern.Constraint;
import org.admanager.generalpattern.plugin.generalpattern.Element;
import org.admanager.generalpattern.plugin.generalpattern.MergingOperator;
import org.admanager.generalpattern.plugin.generalpattern.Multiplicity;
import org.admanager.generalpattern.plugin.generalpattern.Overlapping;
import org.admanager.generalpattern.plugin.generalpattern.Pattern;
import org.admanager.generalpattern.plugin.generalpattern.Role;
import org.admanager.generalpattern.plugin.generalpattern.Stringing;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.gmf.runtime.notation.View;

/**
 * @generated
 */
public class GeneralPatternMetamodelDiagramUpdater {

	/**
	 * @generated
	 */
	public static boolean isShortcutOrphaned(View view) {
		return !view.isSetElement() || view.getElement() == null
				|| view.getElement().eIsProxy();
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/getSemanticChildren(
			View view) {
		switch (GeneralPatternMetamodelVisualIDRegistry.getVisualID(view)) {
		case PatternEditPart.VISUAL_ID:
			return getPattern_1000SemanticChildren(view);
		case PatternPatternCompartmentEditPart.VISUAL_ID:
			return getPatternPatternCompartment_7017SemanticChildren(view);
		case RoleRoleCompartmentEditPart.VISUAL_ID:
			return getRoleRoleCompartment_7018SemanticChildren(view);
		case ComponentComponentCompartmentEditPart.VISUAL_ID:
			return getComponentComponentCompartment_7019SemanticChildren(view);
		case ComponentComponentCompartment2EditPart.VISUAL_ID:
			return getComponentComponentCompartment_7020SemanticChildren(view);
		case ConnectorConnectorCompartmentEditPart.VISUAL_ID:
			return getConnectorConnectorCompartment_7021SemanticChildren(view);
		case PatternPatternCompartment2EditPart.VISUAL_ID:
			return getPatternPatternCompartment_7022SemanticChildren(view);
		case ConnectorConnectorCompartment2EditPart.VISUAL_ID:
			return getConnectorConnectorCompartment_7023SemanticChildren(view);
		case PatternPatternCompartment3EditPart.VISUAL_ID:
			return getPatternPatternCompartment_7024SemanticChildren(view);
		case ComponentComponentCompartment3EditPart.VISUAL_ID:
			return getComponentComponentCompartment_7025SemanticChildren(view);
		case ConnectorConnectorCompartment3EditPart.VISUAL_ID:
			return getConnectorConnectorCompartment_7026SemanticChildren(view);
		case RoleRoleCompartment2EditPart.VISUAL_ID:
			return getRoleRoleCompartment_7027SemanticChildren(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/getPattern_1000SemanticChildren(
			View view) {
		if (!view.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Pattern modelElement = (Pattern) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getElements().iterator(); it
				.hasNext();) {
			Element childElement = (Element) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == Pattern2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == ComponentEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == ConnectorEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getContainingRoles().iterator(); it
				.hasNext();) {
			Role childElement = (Role) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == Role2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getMultiplicities().iterator(); it
				.hasNext();) {
			Multiplicity childElement = (Multiplicity) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == Multiplicity2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getOperators().iterator(); it
				.hasNext();) {
			MergingOperator childElement = (MergingOperator) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == Overlapping2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Stringing2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/getPatternPatternCompartment_7017SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Pattern modelElement = (Pattern) containerView.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getContainingRoles().iterator(); it
				.hasNext();) {
			Role childElement = (Role) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == RoleEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getElements().iterator(); it
				.hasNext();) {
			Element childElement = (Element) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == Component2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Connector3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Pattern4EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getMultiplicities().iterator(); it
				.hasNext();) {
			Multiplicity childElement = (Multiplicity) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == MultiplicityEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getOperators().iterator(); it
				.hasNext();) {
			MergingOperator childElement = (MergingOperator) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == OverlappingEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == StringingEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/getRoleRoleCompartment_7018SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Role modelElement = (Role) containerView.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInvariants().iterator(); it
				.hasNext();) {
			Constraint childElement = (Constraint) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ConstraintEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/getComponentComponentCompartment_7019SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Component modelElement = (Component) containerView.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInternalElements().iterator(); it
				.hasNext();) {
			Element childElement = (Element) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ComponentPortEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Component3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Connector2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Pattern3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/getComponentComponentCompartment_7020SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Component modelElement = (Component) containerView.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInternalElements().iterator(); it
				.hasNext();) {
			Element childElement = (Element) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ComponentPortEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Component3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Connector2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Pattern3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/getConnectorConnectorCompartment_7021SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Connector modelElement = (Connector) containerView.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInternalElements().iterator(); it
				.hasNext();) {
			Element childElement = (Element) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ConnectorRoleEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Component3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Connector2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Pattern3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/getPatternPatternCompartment_7022SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Pattern modelElement = (Pattern) containerView.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getContainingRoles().iterator(); it
				.hasNext();) {
			Role childElement = (Role) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == RoleEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getElements().iterator(); it
				.hasNext();) {
			Element childElement = (Element) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == Component2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Connector3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Pattern4EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getMultiplicities().iterator(); it
				.hasNext();) {
			Multiplicity childElement = (Multiplicity) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == MultiplicityEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getOperators().iterator(); it
				.hasNext();) {
			MergingOperator childElement = (MergingOperator) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == OverlappingEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == StringingEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/getConnectorConnectorCompartment_7023SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Connector modelElement = (Connector) containerView.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInternalElements().iterator(); it
				.hasNext();) {
			Element childElement = (Element) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ConnectorRoleEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Component3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Connector2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Pattern3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/getPatternPatternCompartment_7024SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Pattern modelElement = (Pattern) containerView.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getContainingRoles().iterator(); it
				.hasNext();) {
			Role childElement = (Role) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == RoleEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getElements().iterator(); it
				.hasNext();) {
			Element childElement = (Element) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == Component2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Connector3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Pattern4EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getMultiplicities().iterator(); it
				.hasNext();) {
			Multiplicity childElement = (Multiplicity) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == MultiplicityEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getOperators().iterator(); it
				.hasNext();) {
			MergingOperator childElement = (MergingOperator) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == OverlappingEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == StringingEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/getComponentComponentCompartment_7025SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Component modelElement = (Component) containerView.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInternalElements().iterator(); it
				.hasNext();) {
			Element childElement = (Element) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ComponentPortEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Component3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Connector2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Pattern3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/getConnectorConnectorCompartment_7026SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Connector modelElement = (Connector) containerView.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInternalElements().iterator(); it
				.hasNext();) {
			Element childElement = (Element) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ConnectorRoleEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Component3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Connector2EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
			if (visualID == Pattern3EditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/getRoleRoleCompartment_7027SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Role modelElement = (Role) containerView.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getInvariants().iterator(); it
				.hasNext();) {
			Constraint childElement = (Constraint) it.next();
			int visualID = GeneralPatternMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ConstraintEditPart.VISUAL_ID) {
				result.add(new GeneralPatternMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getContainedLinks(
			View view) {
		switch (GeneralPatternMetamodelVisualIDRegistry.getVisualID(view)) {
		case PatternEditPart.VISUAL_ID:
			return getPattern_1000ContainedLinks(view);
		case Pattern2EditPart.VISUAL_ID:
			return getPattern_2022ContainedLinks(view);
		case ComponentEditPart.VISUAL_ID:
			return getComponent_2023ContainedLinks(view);
		case ConnectorEditPart.VISUAL_ID:
			return getConnector_2024ContainedLinks(view);
		case Role2EditPart.VISUAL_ID:
			return getRole_2025ContainedLinks(view);
		case Multiplicity2EditPart.VISUAL_ID:
			return getMultiplicity_2026ContainedLinks(view);
		case Overlapping2EditPart.VISUAL_ID:
			return getOverlapping_2027ContainedLinks(view);
		case Stringing2EditPart.VISUAL_ID:
			return getStringing_2028ContainedLinks(view);
		case RoleEditPart.VISUAL_ID:
			return getRole_3023ContainedLinks(view);
		case ConstraintEditPart.VISUAL_ID:
			return getConstraint_3024ContainedLinks(view);
		case Component2EditPart.VISUAL_ID:
			return getComponent_3025ContainedLinks(view);
		case ComponentPortEditPart.VISUAL_ID:
			return getComponentPort_3026ContainedLinks(view);
		case Component3EditPart.VISUAL_ID:
			return getComponent_3027ContainedLinks(view);
		case Connector2EditPart.VISUAL_ID:
			return getConnector_3028ContainedLinks(view);
		case ConnectorRoleEditPart.VISUAL_ID:
			return getConnectorRole_3029ContainedLinks(view);
		case Pattern3EditPart.VISUAL_ID:
			return getPattern_3030ContainedLinks(view);
		case Connector3EditPart.VISUAL_ID:
			return getConnector_3031ContainedLinks(view);
		case Pattern4EditPart.VISUAL_ID:
			return getPattern_3032ContainedLinks(view);
		case MultiplicityEditPart.VISUAL_ID:
			return getMultiplicity_3033ContainedLinks(view);
		case OverlappingEditPart.VISUAL_ID:
			return getOverlapping_3034ContainedLinks(view);
		case StringingEditPart.VISUAL_ID:
			return getStringing_3035ContainedLinks(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getIncomingLinks(
			View view) {
		switch (GeneralPatternMetamodelVisualIDRegistry.getVisualID(view)) {
		case Pattern2EditPart.VISUAL_ID:
			return getPattern_2022IncomingLinks(view);
		case ComponentEditPart.VISUAL_ID:
			return getComponent_2023IncomingLinks(view);
		case ConnectorEditPart.VISUAL_ID:
			return getConnector_2024IncomingLinks(view);
		case Role2EditPart.VISUAL_ID:
			return getRole_2025IncomingLinks(view);
		case Multiplicity2EditPart.VISUAL_ID:
			return getMultiplicity_2026IncomingLinks(view);
		case Overlapping2EditPart.VISUAL_ID:
			return getOverlapping_2027IncomingLinks(view);
		case Stringing2EditPart.VISUAL_ID:
			return getStringing_2028IncomingLinks(view);
		case RoleEditPart.VISUAL_ID:
			return getRole_3023IncomingLinks(view);
		case ConstraintEditPart.VISUAL_ID:
			return getConstraint_3024IncomingLinks(view);
		case Component2EditPart.VISUAL_ID:
			return getComponent_3025IncomingLinks(view);
		case ComponentPortEditPart.VISUAL_ID:
			return getComponentPort_3026IncomingLinks(view);
		case Component3EditPart.VISUAL_ID:
			return getComponent_3027IncomingLinks(view);
		case Connector2EditPart.VISUAL_ID:
			return getConnector_3028IncomingLinks(view);
		case ConnectorRoleEditPart.VISUAL_ID:
			return getConnectorRole_3029IncomingLinks(view);
		case Pattern3EditPart.VISUAL_ID:
			return getPattern_3030IncomingLinks(view);
		case Connector3EditPart.VISUAL_ID:
			return getConnector_3031IncomingLinks(view);
		case Pattern4EditPart.VISUAL_ID:
			return getPattern_3032IncomingLinks(view);
		case MultiplicityEditPart.VISUAL_ID:
			return getMultiplicity_3033IncomingLinks(view);
		case OverlappingEditPart.VISUAL_ID:
			return getOverlapping_3034IncomingLinks(view);
		case StringingEditPart.VISUAL_ID:
			return getStringing_3035IncomingLinks(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOutgoingLinks(
			View view) {
		switch (GeneralPatternMetamodelVisualIDRegistry.getVisualID(view)) {
		case Pattern2EditPart.VISUAL_ID:
			return getPattern_2022OutgoingLinks(view);
		case ComponentEditPart.VISUAL_ID:
			return getComponent_2023OutgoingLinks(view);
		case ConnectorEditPart.VISUAL_ID:
			return getConnector_2024OutgoingLinks(view);
		case Role2EditPart.VISUAL_ID:
			return getRole_2025OutgoingLinks(view);
		case Multiplicity2EditPart.VISUAL_ID:
			return getMultiplicity_2026OutgoingLinks(view);
		case Overlapping2EditPart.VISUAL_ID:
			return getOverlapping_2027OutgoingLinks(view);
		case Stringing2EditPart.VISUAL_ID:
			return getStringing_2028OutgoingLinks(view);
		case RoleEditPart.VISUAL_ID:
			return getRole_3023OutgoingLinks(view);
		case ConstraintEditPart.VISUAL_ID:
			return getConstraint_3024OutgoingLinks(view);
		case Component2EditPart.VISUAL_ID:
			return getComponent_3025OutgoingLinks(view);
		case ComponentPortEditPart.VISUAL_ID:
			return getComponentPort_3026OutgoingLinks(view);
		case Component3EditPart.VISUAL_ID:
			return getComponent_3027OutgoingLinks(view);
		case Connector2EditPart.VISUAL_ID:
			return getConnector_3028OutgoingLinks(view);
		case ConnectorRoleEditPart.VISUAL_ID:
			return getConnectorRole_3029OutgoingLinks(view);
		case Pattern3EditPart.VISUAL_ID:
			return getPattern_3030OutgoingLinks(view);
		case Connector3EditPart.VISUAL_ID:
			return getConnector_3031OutgoingLinks(view);
		case Pattern4EditPart.VISUAL_ID:
			return getPattern_3032OutgoingLinks(view);
		case MultiplicityEditPart.VISUAL_ID:
			return getMultiplicity_3033OutgoingLinks(view);
		case OverlappingEditPart.VISUAL_ID:
			return getOverlapping_3034OutgoingLinks(view);
		case StringingEditPart.VISUAL_ID:
			return getStringing_3035OutgoingLinks(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getPattern_1000ContainedLinks(
			View view) {
		Pattern modelElement = (Pattern) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getPattern_2022ContainedLinks(
			View view) {
		Pattern modelElement = (Pattern) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getComponent_2023ContainedLinks(
			View view) {
		Component modelElement = (Component) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConnector_2024ContainedLinks(
			View view) {
		Connector modelElement = (Connector) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getRole_2025ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getMultiplicity_2026ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOverlapping_2027ContainedLinks(
			View view) {
		Overlapping modelElement = (Overlapping) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Source_4017(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Target_4018(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getStringing_2028ContainedLinks(
			View view) {
		Stringing modelElement = (Stringing) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Source_4017(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Target_4018(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getRole_3023ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConstraint_3024ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getComponent_3025ContainedLinks(
			View view) {
		Component modelElement = (Component) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getComponentPort_3026ContainedLinks(
			View view) {
		ComponentPort modelElement = (ComponentPort) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_ComponentPort_DelegatedPorts_4020(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_ComponentPort_AttachedRole_4005(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getComponent_3027ContainedLinks(
			View view) {
		Component modelElement = (Component) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConnector_3028ContainedLinks(
			View view) {
		Connector modelElement = (Connector) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConnectorRole_3029ContainedLinks(
			View view) {
		ConnectorRole modelElement = (ConnectorRole) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_ConnectorRole_DelegatedRoles_4019(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getPattern_3030ContainedLinks(
			View view) {
		Pattern modelElement = (Pattern) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConnector_3031ContainedLinks(
			View view) {
		Connector modelElement = (Connector) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getPattern_3032ContainedLinks(
			View view) {
		Pattern modelElement = (Pattern) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getMultiplicity_3033ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOverlapping_3034ContainedLinks(
			View view) {
		Overlapping modelElement = (Overlapping) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Source_4017(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Target_4018(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getStringing_3035ContainedLinks(
			View view) {
		Stringing modelElement = (Stringing) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Source_4017(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Target_4018(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getPattern_2022IncomingLinks(
			View view) {
		Pattern modelElement = (Pattern) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Source_4017(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Target_4018(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getComponent_2023IncomingLinks(
			View view) {
		Component modelElement = (Component) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Source_4017(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Target_4018(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConnector_2024IncomingLinks(
			View view) {
		Connector modelElement = (Connector) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Source_4017(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Target_4018(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getRole_2025IncomingLinks(
			View view) {
		Role modelElement = (Role) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_Element_Roles_4016(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getMultiplicity_2026IncomingLinks(
			View view) {
		Multiplicity modelElement = (Multiplicity) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_Element_Multiplicity_4013(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOverlapping_2027IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getStringing_2028IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getRole_3023IncomingLinks(
			View view) {
		Role modelElement = (Role) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_Element_Roles_4016(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConstraint_3024IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getComponent_3025IncomingLinks(
			View view) {
		Component modelElement = (Component) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Source_4017(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Target_4018(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getComponentPort_3026IncomingLinks(
			View view) {
		ComponentPort modelElement = (ComponentPort) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Source_4017(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Target_4018(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_ComponentPort_DelegatedPorts_4020(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getComponent_3027IncomingLinks(
			View view) {
		Component modelElement = (Component) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Source_4017(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Target_4018(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConnector_3028IncomingLinks(
			View view) {
		Connector modelElement = (Connector) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Source_4017(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Target_4018(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConnectorRole_3029IncomingLinks(
			View view) {
		ConnectorRole modelElement = (ConnectorRole) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Source_4017(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Target_4018(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_ConnectorRole_DelegatedRoles_4019(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_ComponentPort_AttachedRole_4005(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getPattern_3030IncomingLinks(
			View view) {
		Pattern modelElement = (Pattern) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Source_4017(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Target_4018(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConnector_3031IncomingLinks(
			View view) {
		Connector modelElement = (Connector) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Source_4017(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Target_4018(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getPattern_3032IncomingLinks(
			View view) {
		Pattern modelElement = (Pattern) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Source_4017(
				modelElement, crossReferences));
		result.addAll(getIncomingFeatureModelFacetLinks_MergingOperator_Target_4018(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getMultiplicity_3033IncomingLinks(
			View view) {
		Multiplicity modelElement = (Multiplicity) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingFeatureModelFacetLinks_Element_Multiplicity_4013(
				modelElement, crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOverlapping_3034IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getStringing_3035IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getPattern_2022OutgoingLinks(
			View view) {
		Pattern modelElement = (Pattern) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getComponent_2023OutgoingLinks(
			View view) {
		Component modelElement = (Component) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConnector_2024OutgoingLinks(
			View view) {
		Connector modelElement = (Connector) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getRole_2025OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getMultiplicity_2026OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOverlapping_2027OutgoingLinks(
			View view) {
		Overlapping modelElement = (Overlapping) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Source_4017(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Target_4018(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getStringing_2028OutgoingLinks(
			View view) {
		Stringing modelElement = (Stringing) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Source_4017(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Target_4018(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getRole_3023OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConstraint_3024OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getComponent_3025OutgoingLinks(
			View view) {
		Component modelElement = (Component) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getComponentPort_3026OutgoingLinks(
			View view) {
		ComponentPort modelElement = (ComponentPort) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_ComponentPort_DelegatedPorts_4020(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_ComponentPort_AttachedRole_4005(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getComponent_3027OutgoingLinks(
			View view) {
		Component modelElement = (Component) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConnector_3028OutgoingLinks(
			View view) {
		Connector modelElement = (Connector) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConnectorRole_3029OutgoingLinks(
			View view) {
		ConnectorRole modelElement = (ConnectorRole) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_ConnectorRole_DelegatedRoles_4019(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getPattern_3030OutgoingLinks(
			View view) {
		Pattern modelElement = (Pattern) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getConnector_3031OutgoingLinks(
			View view) {
		Connector modelElement = (Connector) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getPattern_3032OutgoingLinks(
			View view) {
		Pattern modelElement = (Pattern) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Roles_4016(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getMultiplicity_3033OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOverlapping_3034OutgoingLinks(
			View view) {
		Overlapping modelElement = (Overlapping) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Source_4017(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Target_4018(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getStringing_3035OutgoingLinks(
			View view) {
		Stringing modelElement = (Stringing) view.getElement();
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Source_4017(modelElement));
		result.addAll(getOutgoingFeatureModelFacetLinks_MergingOperator_Target_4018(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_Element_Roles_4016(
			Role target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == org.admanager.generalpattern.plugin.generalpattern.generalpatternPackage.eINSTANCE
					.getElement_Roles()) {
				result.add(new GeneralPatternMetamodelLinkDescriptor(setting
						.getEObject(), target,
						GeneralPatternMetamodelElementTypes.ElementRoles_4016,
						ElementRolesEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_Element_Multiplicity_4013(
			Multiplicity target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == org.admanager.generalpattern.plugin.generalpattern.generalpatternPackage.eINSTANCE
					.getElement_Multiplicity()) {
				result.add(new GeneralPatternMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						GeneralPatternMetamodelElementTypes.ElementMultiplicity_4013,
						ElementMultiplicityEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_MergingOperator_Source_4017(
			Element target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == org.admanager.generalpattern.plugin.generalpattern.generalpatternPackage.eINSTANCE
					.getMergingOperator_Source()) {
				result.add(new GeneralPatternMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						GeneralPatternMetamodelElementTypes.MergingOperatorSource_4017,
						MergingOperatorSourceEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_MergingOperator_Target_4018(
			Element target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == org.admanager.generalpattern.plugin.generalpattern.generalpatternPackage.eINSTANCE
					.getMergingOperator_Target()) {
				result.add(new GeneralPatternMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						GeneralPatternMetamodelElementTypes.MergingOperatorTarget_4018,
						MergingOperatorTargetEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_ConnectorRole_DelegatedRoles_4019(
			ConnectorRole target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == org.admanager.generalpattern.plugin.generalpattern.generalpatternPackage.eINSTANCE
					.getConnectorRole_DelegatedRoles()) {
				result.add(new GeneralPatternMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						GeneralPatternMetamodelElementTypes.ConnectorRoleDelegatedRoles_4019,
						ConnectorRoleDelegatedRolesEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_ComponentPort_DelegatedPorts_4020(
			ComponentPort target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == org.admanager.generalpattern.plugin.generalpattern.generalpatternPackage.eINSTANCE
					.getComponentPort_DelegatedPorts()) {
				result.add(new GeneralPatternMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						GeneralPatternMetamodelElementTypes.ComponentPortDelegatedPorts_4020,
						ComponentPortDelegatedPortsEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getIncomingFeatureModelFacetLinks_ComponentPort_AttachedRole_4005(
			ConnectorRole target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() == org.admanager.generalpattern.plugin.generalpattern.generalpatternPackage.eINSTANCE
					.getComponentPort_AttachedRole()) {
				result.add(new GeneralPatternMetamodelLinkDescriptor(
						setting.getEObject(),
						target,
						GeneralPatternMetamodelElementTypes.ComponentPortAttachedRole_4005,
						ComponentPortAttachedRoleEditPart.VISUAL_ID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_Element_Roles_4016(
			Element source) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		for (Iterator/*[?]*/destinations = source.getRoles().iterator(); destinations
				.hasNext();) {
			Role destination = (Role) destinations.next();
			result.add(new GeneralPatternMetamodelLinkDescriptor(source,
					destination,
					GeneralPatternMetamodelElementTypes.ElementRoles_4016,
					ElementRolesEditPart.VISUAL_ID));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_Element_Multiplicity_4013(
			Element source) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		Multiplicity destination = source.getMultiplicity();
		if (destination == null) {
			return result;
		}
		result.add(new GeneralPatternMetamodelLinkDescriptor(source,
				destination,
				GeneralPatternMetamodelElementTypes.ElementMultiplicity_4013,
				ElementMultiplicityEditPart.VISUAL_ID));
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_MergingOperator_Source_4017(
			MergingOperator source) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		Element destination = source.getSource();
		if (destination == null) {
			return result;
		}
		result.add(new GeneralPatternMetamodelLinkDescriptor(source,
				destination,
				GeneralPatternMetamodelElementTypes.MergingOperatorSource_4017,
				MergingOperatorSourceEditPart.VISUAL_ID));
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_MergingOperator_Target_4018(
			MergingOperator source) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		Element destination = source.getTarget();
		if (destination == null) {
			return result;
		}
		result.add(new GeneralPatternMetamodelLinkDescriptor(source,
				destination,
				GeneralPatternMetamodelElementTypes.MergingOperatorTarget_4018,
				MergingOperatorTargetEditPart.VISUAL_ID));
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_ConnectorRole_DelegatedRoles_4019(
			ConnectorRole source) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		for (Iterator/*[?]*/destinations = source.getDelegatedRoles()
				.iterator(); destinations.hasNext();) {
			ConnectorRole destination = (ConnectorRole) destinations.next();
			result.add(new GeneralPatternMetamodelLinkDescriptor(
					source,
					destination,
					GeneralPatternMetamodelElementTypes.ConnectorRoleDelegatedRoles_4019,
					ConnectorRoleDelegatedRolesEditPart.VISUAL_ID));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_ComponentPort_DelegatedPorts_4020(
			ComponentPort source) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		for (Iterator/*[?]*/destinations = source.getDelegatedPorts()
				.iterator(); destinations.hasNext();) {
			ComponentPort destination = (ComponentPort) destinations.next();
			result.add(new GeneralPatternMetamodelLinkDescriptor(
					source,
					destination,
					GeneralPatternMetamodelElementTypes.ComponentPortDelegatedPorts_4020,
					ComponentPortDelegatedPortsEditPart.VISUAL_ID));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/getOutgoingFeatureModelFacetLinks_ComponentPort_AttachedRole_4005(
			ComponentPort source) {
		LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/result = new LinkedList/*[generalpattern.diagram.part.GeneralPatternMetamodelLinkDescriptor]*/();
		ConnectorRole destination = source.getAttachedRole();
		if (destination == null) {
			return result;
		}
		result.add(new GeneralPatternMetamodelLinkDescriptor(
				source,
				destination,
				GeneralPatternMetamodelElementTypes.ComponentPortAttachedRole_4005,
				ComponentPortAttachedRoleEditPart.VISUAL_ID));
		return result;
	}

}
